#ifndef __APP_DEF_H__
#define __APP_DEF_H__

#include "udf_def.h"
#include "radar_user_def.h"

/* 版本号 */
#if SDK_VERSION < SDK_VERSION_GENE(3,0)
#define FW_VERSION_CAT(a,b) a##_210.21.2.##b
#else
#define FW_VERSION_CAT(a,b) a##_300.21.2.##b
#endif
#define MACRO_STR(x) #x
#define TO_STR(x) MACRO_STR(x)


#if 1 /* 应用配置 */

#define GPIO_OUTPUT_ENABLE      // GPIO输出配置

#if !defined(BD_GPIO_OUTPUT_PIN) || !defined(BD_GPIO_OUTPUT_PIN_SET)
#if defined(GPIO_OUTPUT_ENABLE)
#undef GPIO_OUTPUT_ENABLE
#endif
#endif

#if defined(GPIO_OUTPUT_ENABLE)
#define GPIO_OUTPUT_MODE    (0) // 0-OD 1-PP
#define GPIO_OUTPUT_ACTIVE  (0) // 0-low 1-high
#define GPIO_OUTPUT_PULL    (0) // 0-下拉 1-上拉
#define GPIO_OUTPUT_ID      (BD_GPIO_OUTPUT_PIN) // gpio0.x
#define GPIO_OUTPUT_SET     BD_GPIO_OUTPUT_PIN_SET
#endif

#define UART_RECV_ENABLE    // 串口接收

#define LOWPOWER_ENABLE     // 低功耗开关


// 必须保证UDF_global结构体类型有定义 
// magic_flag_A、magic_flag_B为构建需要初始值不可修改，且位置必须位于结构体最后。
typedef struct{

	uint32_t magic_flag_A;
	uint32_t magic_flag_B;
}sUDF_global_t;

#endif
